package com.someclip.component.controlls
{
	import com.someclip.component.interfaces.IButton;
	import com.someclip.component.interfaces.ISelectableButton;

	/**
	 * ...
	 * @author Argus
	 */
	public class SelectableButton extends Button implements ISelectableButton, IButton
	{
		private var _selected:Boolean;
		private var _selectedStyle:Object;
		private var _normalStyle:Object;
		private var _selectedLabel:String="Button";
		private var _selectedFontSize:int=14;
		private var _selectedFontWeight:Boolean=false;
		private var _selectedFontColor:uint=0x000000;
		private var _selectedTextAlign:String="center";
		private var _normalLabel:String="Button";
		private var _normalFontSize:int=14;
		private var _normalFontWeight:Boolean=false;
		private var _normalFontColor:uint=0x000000;

		public function SelectableButton()
		{

		}

		/* INTERFACE com.funyoo.component.interfaces.ISelectableButton */

		public function get selected():Boolean
		{
			return _selected;
		}

		public function set selected(value:Boolean):void
		{
			_selected=value;
		}

		public function get selectedStyle():Object
		{
			return _selectedStyle;
		}

		public function set selectedStyle(value:Object):void
		{
			_selectedStyle=value;
		}

		public function get normalStyle():Object
		{
			return _normalStyle;
		}

		public function set normalStyle(value:Object):void
		{
			_normalStyle=value;
		}

		public function get selectedLabel():String
		{
			return _selectedLabel;
		}

		public function set selectedLabel(value:String):void
		{
			_selectedLabel=value;
		}

		public function get selectedFontSize():uint
		{
			return _selectedFontSize;
		}

		public function set selectedFontSize(value:uint):void
		{
			_selectedFontSize=value;
		}

		public function get selectedFontWeight():Boolean
		{
			return _selectedFontWeight;
		}

		public function set selectedFontWeight(value:Boolean):void
		{
			_selectedFontWeight=value;
		}

		public function get selectedFontColor():uint
		{
			return _selectedFontColor;
		}

		public function set selectedFontColor(value:uint):void
		{
			_selectedFontColor=value;
		}

		public function get selectedTextAlign():String
		{
			return _selectedTextAlign;
		}

		public function set selectedTextAlign(value:String):void
		{
			_selectedTextAlign=value;
		}

		override public function set label(value:String):void
		{
			super.label=value;
			if (_selectedLabel == "Button")
			{
				_selectedLabel=value;
			}
		}
	}

}
